home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
C64
/
T-TPUG Old Monthly Disks
/
(c)t5.d64
/
random lotto.c
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2009-10-10
|
4KB
|
180 lines
10 REM "RANDOM LOTTO"
11 REM FOR THE COMMODORE 64
12 REM
15 REM TITLE, INTRO AND MENU SEGMENT
16 REM
20 PRINT CHR$(147) : PRINT CHR$(158)
25 POKE 53280,7:POKE 53281,6
30 FOR N=1 TO 300
40 PRINT " RANDOM LOTTO ";
45 NEXT N
50 PRINT CHR$(147)
65 FOR S=1 TO 3
80 PRINT TAB(13)"RANDOM LOTTO"
90 PRINT TAB(13)"****** *****":FOR R=1 TO 500:NEXT R
95 NEXT S
100 PRINT:PRINT TAB(13)"RANDOM LOTTO"
110 PRINT TAB(13)"****** *****"
120 FOR Q=1 TO 900 : NEXT Q
125 PRINT:PRINT TAB(18)"BY"
130 PRINT:PRINT TAB(12)"ROY A. DERRICK"
140 PRINT:PRINT TAB(11)"TORONTO, ONTARIO"
145 PRINT:PRINT TAB(16)"(1983)"
150 FOR T=1 TO 2750 : NEXT T
161 PRINT CHR$(144):POKE 53280,6:PRINT CHR$(147):POKE 53281,6
170 PRINT TAB(5)"THIS PROGRAM GENERATES RANDOM"
175 PRINT TAB(5)"NUMBERS FOR THE LOTTO 6/49"
180 PRINT TAB(5)"AND LOTTARIO LOTTERIES.":PRINT
185 PRINT TAB(5)"IN BOTH CASES SEVERAL SERIES"
190 PRINT TAB(5)"OF SIX NUMBERS EACH ARE "
195 PRINT TAB(5)"GENERATED IN SUCCESSION."
200 PRINT TAB(5)"DUPLICATE NUMBERS WITHIN A"
205 PRINT TAB(5)"SERIES ARE REJECTED AS THE"
210 PRINT TAB(5)"RULES OF THE LOTTERIES DO NOT"
215 PRINT TAB(5)"ALLOW THEM." :PRINT
218 PRINT TAB(5)"FOR LOTTO 6/49, SIX SERIES OF"
220 PRINT TAB(5)"NUMBERS ARE GENERATED PER SCREEN"
225 PRINT TAB(5)"AS THIS IS THE NUMBER OF 'BOARDS'"
230 PRINT TAB(5)"ON THE LOTTERY SELECTION SLIP."
235 PRINT TAB(5)"SINCE SEVEN BOARDS ARE PROVIDED"
240 PRINT TAB(5)"FOR LOTTARIO, THE PROGRAM"
247 PRINT TAB(5)"DISPLAYS SEVEN SERIES PER SCREEN"
250 PRINT TAB(5)"IN THIS MODE.":PRINT
255 PRINT CHR$(5)
260 PRINT "PRESS SPACE BAR TO CONTINUE"
270 GET G$
275 IF G$=" "THEN GOTO 295
280 IF G$=""THEN GOTO 270
290 IF G$=<>" "THEN GOTO 270
295 PRINT CHR$(147):PRINT CHR$(144):POKE 53280,6:POKE 53281,6
300 PRINT:PRINT:PRINT
305 PRINT TAB(18)"MENU"
306 PRINT TAB(18)"----":PRINT:PRINT:PRINT:PRINT
310 PRINT TAB(5)"FOR LOTTO 6/49 NUMBERS PRESS F1"
320 PRINT:PRINT:PRINT TAB(5)"FOR LOTTARIO NUMBERS PRESS F3"
330 PRINT:PRINT:PRINT TAB(5)"TO EXIT PRESS F7"
340 GET MM$: IF MM$="[133]" THEN GOTO 400
350 IF MM$="[134]" THEN GOTO 4000
360 IF MM$="[136]" THEN GOTO 9000
370 IF MM$<>"[133]" AND MM$<>"[134]" THEN GOTO 340
380 IF MM$<>"[140]" THEN GOTO 340
385 REM
400 REM LOTTO 6/49 SEGMENT
405 REM
410 PRINT CHR$(147):POKE 53280,6:POKE 53281,12:PRINT CHR$(31)
420 FOR V=1 TO 11
430 PRINT TAB(10)"*** LOTTO 6/49 ***":PRINT
440 FOR VV=1 TO 200:NEXT VV
450 NEXT V
460 FOR U=1 TO 300:NEXT U
510 PRINT CHR$(147)
520 POKE 53280,6:POKE 53281,12:PRINT CHR$(144)
700 FOR K = 1 TO 6
800 A=INT(49*RND(0))+1
900 B=INT(49*RND(0))+1
1000 C=INT(49*RND(0))+1
1100 D=INT(49*RND(0))+1
1200 E=INT(49*RND(0))+1
1300 F=INT(49*RND(0))+1
1400 IF B=A THEN GOTO 900
1500 IF C=A THEN GOTO 1000
1600 IF C=B THEN GOTO 1000
1700 IF D=A THEN GOTO 1100
1800 IF D=B THEN GOTO 1100
1900 IF D=C THEN GOTO 1100
2000 IF E=A THEN GOTO 1200
2100 IF E=B THEN GOTO 1200
2200 IF E=C THEN GOTO 1200
2300 IF E=D THEN GOTO 1200
2400 IF F=A THEN GOTO 1300
2500 IF F=B THEN GOTO 1300
2600 IF F=C THEN GOTO 1300
2700 IF F=D THEN GOTO 1300
2800 IF F=E THEN GOTO 1300
2900 PRINT TAB(7);A;TAB(17);B;TAB(27);C
2950 PRINT TAB(7);D;TAB(17);E;TAB(27);F:PRINT
3000 FOR L=1 TO 250:NEXT L
3100 NEXT K
3150 PRINT CHR$(28)
3175 PRINT TAB(1);"CONTINUE:F1";TAB(18);"MENU:F5";TAB(31);"EXIT:F7"
3400 GET A$:IF A$ = "" THEN GOTO 3400
3600 IF A$="[133]" THEN GOTO 510
3650 IF A$="[135]" THEN GOTO 295
3700 IF A$="[136]" THEN GOTO 8000
3800 IF A$<>"[135]" AND A$<>"[140]" THEN GOTO 3400
3900 IF A$<>"[134]" THEN GOTO 3400
3950 REM
4000 REM LOTTARIO SEGMENT
4005 REM
4010 PRINT CHR$(147):POKE 53280,2:POKE 53281,12:PRINT CHR$(28)
4020 FOR XX=1 TO 11
4030 PRINT TAB(11)"*** LOTTARIO ***":PRINT
4040 FOR PP=1 TO 200:NEXT PP
4050 NEXT XX
4060 FOR W=1 TO 300:NEXT W
4100 PRINT CHR$(147):PRINT CHR$(144)
4150 POKE 53280,2:POKE 53281,12
4200 FOR KK = 1 TO 6
4300 AA=INT(39*RND(0))+1
4400 BB=INT(39*RND(0))+1
4500 CC=INT(39*RND(0))+1
4600 DD=INT(39*RND(0))+1
4700 EE=INT(39*RND(0))+1
4800 FF=INT(39*RND(0))+1
4810 IF BB=AA THEN GOTO 4400
4820 IF CC=AA THEN GOTO 4500
4830 IF CC=BB THEN GOTO 4500
4840 IF DD=AA THEN GOTO 4600
4850 IF DD=BB THEN GOTO 4600
5400 IF DD=CC THEN GOTO 4600
5500 IF EE=AA THEN GOTO 4700
5550 IF EE=BB THEN GOTO 4700
5700 IF EE=CC THEN GOTO 4700
5800 IF EE=DD THEN GOTO 4700
5900 IF FF=AA THEN GOTO 4800
6000 IF FF=BB THEN GOTO 4800
6100 IF FF=CC THEN GOTO 4800
6200 IF FF=DD THEN GOTO 4800
6300 IF FF=EE THEN GOTO 4800
6400 PRINT TAB(7);AA;TAB(17);BB;TAB(27);CC
6450 PRINT TAB(7);DD;TAB(17);EE;TAB(27);FF:PRINT
6500 FOR L=1 TO 250:NEXT L
6550 NEXT KK
6560 GOSUB 10000
6600 PRINT CHR$(28)
6675 PRINT TAB(1);"CONTINUE:F3";TAB(18);"MENU:F5";TAB(31);"EXIT:F7"
6900 GET B$:IF B$ = "" THEN GOTO 6900
7100 IF B$="[135]" THEN GOTO 295
7200 IF B$="[136]" THEN GOTO 8000
7300 IF B$="[134]" THEN GOTO 4100
7400 IF B$<>"[136]" AND B$<>"[140]" THEN GOTO 6900
7500 IF B$<>"[133]" THEN GOTO 6900
8000 PRINT CHR$(147):PRINT CHR$(158):POKE 53280,7:POKE 53281,6
8100 PRINT"GOOD LUCK!!"
8200 FOR RR=1 TO 1000:NEXT RR
9000 PRINT CHR$(147):PRINT CHR$(154):POKE 53280,14:POKE 53281,6:END
10000 AA=INT(39*RND(0))+1
10100 BB=INT(39*RND(0))+1
10200 CC=INT(39*RND(0))+1
10300 DD=INT(39*RND(0))+1
10400 EE=INT(39*RND(0))+1
10500 FF=INT(39*RND(0))+1
10600 IF BB=AA THEN GOTO 10100
10700 IF CC=AA THEN GOTO 10200
10800 IF CC=BB THEN GOTO 10200
10900 IF DD=AA THEN GOTO 10300
11000 IF DD=BB THEN GOTO 10300
11100 IF DD=CC THEN GOTO 10300
11200 IF EE=AA THEN GOTO 10400
11300 IF EE=BB THEN GOTO 10400
11400 IF EE=CC THEN GOTO 10400
11500 IF EE=DD THEN GOTO 10400
11600 IF FF=AA THEN GOTO 10500
11700 IF FF=BB THEN GOTO 10500
11800 IF FF=CC THEN GOTO 10500
11900 IF FF=DD THEN GOTO 10500
12000 IF FF=EE THEN GOTO 10500
13000 PRINT TAB(7);AA;TAB(17);BB;TAB(27);CC
13050 PRINT TAB(7);DD;TAB(17);EE;TAB(27);FF
13100 RETURN